package pro.cherish.knowledgeumldesignpattern.designPattern.com.cherish.adapter;

//在系统升级时大量使用，不想完全抛弃低版本，所以需要大量适配器来适配
/**
 * 客户端类
 * （相当于例子中的笔记本）
 */
public class Client {
    public void test1(Target t){
        t.handleRequest();
    }
    public static void main(String [] args){
       test1();
       test2();
    }
//    类继承的方式实现构造器（适配器继承 被适配类） 继承只能单继承，不方便
    public static void test1(){
        Client client = new Client();
        Target target = new Adpater();
        client.test1(target);
    }

    //    组合的方式实现构造器(将被适配对象组合到适配器中)
    public static void test2(){
        Client client = new Client();
        Adapatee adapatee = new Adapatee();
        Target target = new Adpater2(adapatee);
        client.test1(target);
    }
}
